Skip to main content
Version: current

mpls


mpls/ldp

Conditions: !smips
Type: Directory

FlagNameDescription
Xdisableddisabled
Iinactiveinactive
ArgumentTypeDescription
lsr-id ( unset )ipAddrUnique label switching router's ID.
path-vector-limit ( unset )numMax path vector limit used for loop detection. Works in combination with the loop-detect property.
hop-limit ( unset )numMax hop limit used for loop detection. Works in combination with the loop-detect property.
loop-detect ( unset )boolDefines whether to run LSP loop detection. Will not work correctly if not enabled on all LSRs. Should be used only on non-TTL networks such as ATMs.
use-explicit-null ( unset )boolWhether to distribute explicit-null label bindings.
distribute-for-default ( unset )boolDefines whether to map label for the default route.
transport-addresses ( unset )multi_arg { array-id, address (flags=46) }Specifies LDP session connection origin addresses and also advertises these addresses as transport addresses to LDP neighbors.
vrf ( unset )enumName of the VRF table this instance will operate on.
afi ( unset )ubit (ip, ipv6)Determines supported address families by the instance.
preferred-afi ( unset )enum (ip | ipv6)Determines which address family connection is preferred. Value is also set in dual-stack element (if used).

mpls/ldp/interface

Conditions: !smips
Type: Directory

FlagNameDescription
Xdisableddisabled
ArgumentTypeDescription
interface ( mandatory )enum ()Name of the interface or interface list where LDP will be listening.
hello-interval ( unset )timeThe interval between hello packets that the router sends out on the specified interface/s. The default value is 5s.
hold-time ( unset )timeSpecifies the interval after which a neighbor discovered on the interface is declared as not reachable. The default value is 15s.
transport-addresses ( unset )multi_arg { array-id, address (flags=46) }Used transport addresses if they differ from LDP Instance settings.
accept-dynamic-neighbors ( unset )boolDefines whether to discover neighbors dynamically or use only statically configured in LDP neighbors menu.
afi ( unset )ubit (ip, ipv6)Determines interface address family. Only AFIs that are configured as supported by the instance are taken into account. If the value is not explicitly specified then it is considered to be equal to the instance-supported AFIs.

mpls/ldp/local-mapping

Conditions: !smips
Type: Directory

This sub-menu shows labels bound to the routes locally in the router. In this menu, static mappings can also be configured if there is no intention to use LDP dynamically.

FlagNameDescription
Xdisableddisabled
IinactiveWhether binding is active and can be selected as a candidate for forwarding.
DdynamicWhether the entry was dynamically added.
Eegressegress
GgatewayWhether the destination is reachable through the gateway.
LlocalWhether the destination is locally reachable on the router.
Vvplsvpls
ArgumentTypeDescription
vrf ( unset )enumName of the VRF table this mapping belongs to.
dst-address ( unset mandatory )address (flags=46/)Destination prefix the label is assigned to.
label ( mandatory )alt { enum (expl-null | alert | expl-null6 | impl-null) { expl-null:0, alert:1, expl-null6:2, impl-null:3 } , num [16 .. 1048576] }Label number assigned to destination.
Read-only ArgumentTypeDescription
adv-pathstring
peersobj_arg { composite_arg { , } { , } }IP address and label space of the peer to which this entry was advertised.
pw-fecstring

mpls/ldp/remote-mapping

Conditions: !smips
Type: Directory

The Sub-menu shows label bindings for routes received from other routers. Static mapping can be configured if there is no intention to use LDP dynamically. This table is used to build the Forwarding Table

FlagNameDescription
Xdisableddisabled
IinactiveWhether binding is active and can be selected as a candidate for forwarding.
DdynamicWhether entry was dynamically added.
Vvplsvpls
ArgumentTypeDescription
vrf ( unset )enumName of the VRF table this mapping belongs to.
dst-address ( mandatory )address (flags=46/)Destination prefix the label is assigned to.
label ( mandatory )alt { enum (expl-null | alert | expl-null6 | impl-null) { expl-null:0, alert:1, expl-null6:2, impl-null:3 } , num [16 .. 1048576] }Label number assigned to destination.
nexthop ( mandatory )address (flags=46i)
Read-only ArgumentTypeDescription
peerobj_arg { composite_arg { , } { , } }
pathstring
pw-fecstring

mpls/ldp/neighbor

Conditions: !smips
Type: Directory

List of discovered and statically configured LDP neighbors.

FlagNameDescription
Xdisableddisabled
Ddynamicdynamic
Iinactiveinactive
OoperationalIndicates whether the peer is operational.
Cactive-connectIndicates that active role has been selected and the router is trying to establish the session.
Wpassive-waitIndicates whether the peer is in a passive role and currently is waiting for the session to be initialized.
TthrottledIndicates whether session is in throttled state. Session is throttled after initialization failure, max throttle time 120s.
tsending-targeted-helloWhether targeted hellos are being sent to the neighbor.
vvplsWhether neighbor is used by LDP signaled VPLS tunnel.
ppassiveIndicates whether the peer is in a passive role.
don-demandDownstream On Demand label distribution.
ArgumentTypeDescription
transport ( mandatory )address (flags=46vi)Remote transport address.
send-targeted ( unset )boolSpecifies whether to try to send targeted hellos, used for targeted (not directly connected) LDP sessions.
Read-only ArgumentTypeDescription
peerobj_arg { composite_arg { , } { , } }LSR-ID and label space of the neighbor.
local-transportaddress (flags=46)Selected local transport address.
addressesmulti_arg { array-id, address (flags=46) }List of discovered addresses on the neighbor.
path-vector-limitnum
on-demandboolDownstream On Demand label distribution.
used-afiubit (ip, ipv6)Used transport AFI.

mpls/ldp/accept-filter

Conditions: !smips
Type: Directory

List of label bindings that should be accepted from LDP neighbors.

FlagNameDescription
Xdisableddisabled
ArgumentTypeDescription
vrf ( unset )enum (any)
prefix ( unset )address (flags=46/)Prefix to match.
neighbor ( unset )address (flags=46/)Neighbor to which this filter applies.
accept ( unset )boolWhether to accept label bindings from the neighbors for the specified prefix. If parameter is unset then matching prefix is not accepted.

mpls/ldp/advertise-filter

Conditions: !smips
Type: Directory

FlagNameDescription
Xdisableddisabled
ArgumentTypeDescription
vrf ( unset )enum (any)
prefix ( unset )address (flags=46/)Prefix to match.
neighbor ( unset )address (flags=46/)Neighbor to which this filter applies.
boolWhether to advertise label bindings to the neighbors for the specified prefix. If parameter is unset then matching prefix is not advertised.

mpls/mangle

Type: Directory

FlagNameDescription
Xdisableddisabled
ArgumentTypeDescription
chain ( unset )ubit (forward, output)
exp ( unset )ubit (0, 1, 2, 3, 4, 5, 6, 7)
set-exp ( unset )enum (0 | 1 | 2 | 3 | 4 | 5 | 6 | 7)
set-mark ( unset )enum
Read-only ArgumentTypeDescription
packetsnum

mpls/mangle/reset-counters

Type: Command

mpls/mangle/reset-counters-all

Type: Command

mpls/settings

Conditions: !smips
Type: Settings Directory

ArgumentTypeDescription
dynamic-label-rangerange_argRange of Label numbers used for dynamic allocation. The first 16 labels are reserved for special purposes (as defined in RFC). If you intend to configure labels statically then adjust the dynamic default range not to include numbers that will be used in a static configuration.
propagate-ttlboolWhether to copy TTL values from IP header to MPLS header. If this option is set to no then hops inside the MPLS cloud will be invisible to traceroutes.
allow-fast-pathboolEnable/disable MPLS fast-path support.
Read-only ArgumentTypeDescription
mpls-fast-path-packetsnum
mpls-fast-path-bytesnum

mpls/interface

Conditions: !smips
Type: Directory

Configuration of MPLS MTU (path MTU + MPLS tag size) is useful in cases when there is a large variety of possible MTUs along the path. Configuring MPLS MTU to a minimum value that can pass all the hops will ensure that the MPLS packet will not be silently dropped on the devices that do not support a big enough MTU.

[admin@rack1_b35_CCR1036] /mpls/interface> print
Flags: X - disabled; * - builtin
0 ;;; router-test
interface=ether1 mpls-mtu=1580 input=yes

1 ;;; router-test
interface=ether2 mpls-mtu=1580 input=yes

2 interface=all mpls-mtu=1500

If interface is not matched by any entry in the list, then mpls MTU will be equal to interface's L2MTU.

info

Listed entries are ordered, and the first entry (iterating from the top to the bottom) that matches the interface will be used.

The order of the entries is important due to the possibility that different interface lists can contain the same interface and in addition, that interface can be referenced directly.

Selection of the MPLS MTU happens in the following manner:

  • If the interface matches the entry from this table, then try to use the configured MPLS MTU value.
  • If the interface does not match any entry then consider MPLS MTU equal to L2MTU.
  • If the interface does not support L2MTU, then consider MPLS MTU equal to L3 MTU.

On the MPLS ingress path, MTU is chosen by min(MPLS MTU - tagsize, l3mtu). This means that on interfaces that do not support L2MTU and the default L3 MTU is set to 1500, max path MTU will be 1500 - tag size (the interface will not be able to pass a full IP frame without fragmentation). In such scenarios, L3MTU must be increased by the max observed tag size.

Read more on MTUs in the MTU in RouterOS article.

FlagNameDescription
Xdisabled
*builtin
ArgumentTypeDescription
interface ( mandatory )enum ()Name of the interface or interface-list to match.
mpls-mtu ( unset )numThe option represents how big packets can be carried over the interface with added MPLS labels
input ( unset )boolWhether to allow MPLS input on the interface.

mpls/forwarding-table

Conditions: !smips
Type: Directory

FlagNameDescription
Lldp
Pvpn
Ttraffic-eng
Vvpls
Read-only ArgumentTypeDescription
labelenum (expl-null | alert | expl-null6 | impl-null)
typeenum (ldp | vpn | traffic-eng | vpls)
vrfenum
prefixaddress (flags=46/)
nexthopsobj_arg { enum (expl-null | alert | expl-null6 | impl-null) { expl-null:0, alert:1, expl-null6:2, impl-null:3 } , address , interface_enum }
te-senderstring
te-sessionstring
vplsinterface_enum

mpls/traffic-eng

Conditions: !smips
Type: Directory

mpls/traffic-eng/path

Conditions: !smips
Type: Directory

FlagNameDescription
Xdisabled
ArgumentTypeDescription
name ( mandatory )string
use-cspf ( unset )bool
setup-priority ( unset )num
holding-priority ( unset )num
record-route ( unset )bool
affinity-include-all ( unset )num
affinity-include-any ( unset )num
affinity-exclude ( unset )num
reoptimize-interval ( unset )time
hops ( unset )multi_arg { array-id, array-id, super { address (flags=46) , /bool } { address (flags=46) , /bool } }

mpls/traffic-eng/tunnel

Conditions: !smips
Type: Directory

FlagNameDescription
Xdisabled
Iinvalid
Fforwarding
ArgumentTypeDescription
name ( mandatory )string
vrf ( unset )enum
from-address ( unset )address (flags=46)Ingress address of the tunnel. If not set, the least IP address is picked.
to-address ( mandatory )address (flags=46)Remote end of the TE tunnel.
bandwidth ( unset )num
primary-path ( unset )enumPrimary label switching paths defined in the /mpls/traffic-eng/path menu.
secondary-paths ( unset )multi_arg { array-id, enum }List of label switching paths used by the TE tunnel if the primary path fails. Paths are defined in the /mpls/traffic-eng/path menu.
primary-retry-interval ( unset )timeInterval after which the tunnel will try to use the primary path.
secondary-standby ( unset )bool
bandwidth-limit ( unset )numDefines the actual bandwidth limitation of the TE tunnel. Limit is configured in percent of the specified tunnel bandwidth.
auto-bandwidth-range ( unset )composite_arg { , }Auto bandwidth adjustment range.
auto-bandwidth-reserve ( unset )numSpecifies the percentage of additional bandwidth to reserve.
auto-bandwidth-avg-interval ( unset )timeInterval in which the actual amount of data is measured, from which average bandwidth is calculated.
auto-bandwidth-update-interval ( unset )timeInterval during which the tunnel keeps track of the highest average rate.
setup-priority ( unset )numThe parameter is used to decide whether this session can preempt another session. 0 sets the highest priority.
holding-priority ( unset )numUsed to decide whether this session can be preempted by another session. 0 sets the highest priority.
record-route ( unset )boolIf enabled, the sender node will receive information about the actual route that the LSP tunnel traverses. Record Route is analogous to a path vector, and hence can be used for loop detection.
affinity-include-all ( unset )numUse the interface only if resource-class matches all of the specified bits.
affinity-include-any ( unset )numUse the interface if resource-class matches any of specified bits.
affinity-exclude ( unset )numDo not use the interface if resource-class matches any of the specified bits.
reoptimize-interval ( unset )timeInterval after which the tunnel will re-optimize the current path. If the current path is not the best path then after optimization the best path will be used.
Read-only ArgumentTypeDescription
sessionstring
forwarding-onstring
primarystring
primary-pendingstring
secondarystring
secondary-pendingstring

mpls/traffic-eng/tunnel/reoptimize

Conditions: !smips
Type: Command

mpls/traffic-eng/interface

Conditions: !smips
Type: Directory

FlagNameDescription
Xdisabled
Iinvalid
ArgumentTypeDescription
interface ( mandatory )interface_enum
bandwidth ( unset )num
k-factor ( unset )num
resource-class ( unset )num
refresh-time ( unset )time
use-udp ( unset )bool
blockade-k-factor ( unset )num
te-metric ( unset )num
igp-flood-period ( unset )time
up-flood-thresholds ( unset )multi_arg { array-id, num [0 .. 100] }
down-flood-thresholds ( unset )multi_arg { array-id, num [0 .. 100] }
Read-only ArgumentTypeDescription
remaining-bwnum
remaining-bw-priosmulti_arg { array-id, num }
lihnum
local-address-ipaddress (flags=46)
local-address-ip6address (flags=46)

mpls/traffic-eng/flow

Conditions: !smips
Type: Directory

FlagNameDescription
Ningress
Eegress
Fforwarding
Rreservation
Read-only ArgumentTypeDescription
vrfenum
sessionstring
senderstring
labelnum
out-labelsmulti_arg { array-id, num }
out-nexthopaddress (flags=46i)
bwnum
styleenum (unknown | shared | fixed)
psbstring
blockadestring
resvstring
rsbstring